package com.wanwu.channel.remote.allinpay.http.req;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * @ClassName TLPrepayReq
 * @Description 通联统一支付接口请求入参
 * @Author husheng
 * @Date 2020-01-15 20:34
 */
@Data
public class TLPrepayReq extends TLBaseReq {

    private static final long serialVersionUID = -7111535219004325976L;

    //交易金额
    @JSONField(name = "trxamt")
    private String trxAmt;

    //商户交易单号
    @JSONField(name = "reqsn")
    private String reqSn;

    //交易方式
    @JSONField(name = "paytype")
    private String payType;

    //订单标题
    @JSONField(name = "body")
    private String body;

    //备注
    @JSONField(name = "remark")
    private String remark;

    //有效时间
    @JSONField(name = "validtime")
    private String validTime;

    //支付平台用户标识
    @JSONField(name = "acct")
    private String acct;

    //交易结果通知地址
    @JSONField(name = "notify_url")
    private String notifyUrl;

    //支付限制
    @JSONField(name = "limit_pay")
    private String limitPay;

    //微信子appId
    @JSONField(name = "sub_appid")
    private String subAppId;

    //订单优惠标识
    @JSONField(name = "goods_tag")
    private String goodsTag;

    //优惠信息
    @JSONField(name = "benefitdetail")
    private String benefitDetail;

    //渠道门店编号
    @JSONField(name = "chnlstoreid")
    private String channelStoreId;

    //门店号
    @JSONField(name = "subbranch")
    private String subBranch;

    //拓展参数
    @JSONField(name = "extendparams")
    private String extendParams;

    //终端ip
    @JSONField(name = "cusip")
    private String cusIp;

    //证件号
    @JSONField(name = "idno")
    private String idNo;

    //付款人真实姓名
    @JSONField(name = "truename")
    private String trueName;

    //分账信息
    @JSONField(name = "asinfo")
    private String asInfo;

    //花呗分期
    @JSONField(name = "fqnum")
    private String fqNum;

    //用于通联H5：   参数字符编码集，支持    UTF-8、GBK
    @JSONField(name = "charset")
    private String charset;

    //用于通联H5：   页面跳转同步通知页面路径
    @JSONField(name = "returl")
    private String returl;

    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
    }
}
